package com.sunny.fetch.pojo;

import javax.persistence.*;

@Table(name = "f_new_share")
public class FNewShare {
    @Id
    private Long tid;

    /**
     * TS股票代码
     */
    @Column(name = "ts_code")
    private String tsCode;

    /**
     * 申购代码
     */
    @Column(name = "sub_code")
    private String subCode;

    /**
     * 名称
     */
    private String name;

    /**
     * 上网发行日期
     */
    @Column(name = "ipo_date")
    private String ipoDate;

    /**
     * 上市日期
     */
    @Column(name = "issue_date")
    private String issueDate;

    /**
     * 发行总量（万股）
     */
    private Float amount;

    /**
     * 上网发行总量（万股）
     */
    @Column(name = "market_amount")
    private Float marketAmount;

    /**
     * 发行价格
     */
    private Float price;

    /**
     * 市盈率
     */
    private Float pe;

    /**
     * 个人申购上限（万股）
     */
    @Column(name = "limit_amount")
    private Float limitAmount;

    /**
     * 募集资金（亿元）
     */
    private Float funds;

    /**
     * 中签率
     */
    private Float ballot;

    public FNewShare(Long tid, String tsCode, String subCode, String name, String ipoDate, String issueDate, Float amount, Float marketAmount, Float price, Float pe, Float limitAmount, Float funds, Float ballot) {
        this.tid = tid;
        this.tsCode = tsCode;
        this.subCode = subCode;
        this.name = name;
        this.ipoDate = ipoDate;
        this.issueDate = issueDate;
        this.amount = amount;
        this.marketAmount = marketAmount;
        this.price = price;
        this.pe = pe;
        this.limitAmount = limitAmount;
        this.funds = funds;
        this.ballot = ballot;
    }

    public FNewShare() {
        super();
    }

    /**
     * @return tid
     */
    public Long getTid() {
        return tid;
    }

    /**
     * @param tid
     */
    public void setTid(Long tid) {
        this.tid = tid;
    }

    /**
     * 获取TS股票代码
     *
     * @return ts_code - TS股票代码
     */
    public String getTsCode() {
        return tsCode;
    }

    /**
     * 设置TS股票代码
     *
     * @param tsCode TS股票代码
     */
    public void setTsCode(String tsCode) {
        this.tsCode = tsCode;
    }

    /**
     * 获取申购代码
     *
     * @return sub_code - 申购代码
     */
    public String getSubCode() {
        return subCode;
    }

    /**
     * 设置申购代码
     *
     * @param subCode 申购代码
     */
    public void setSubCode(String subCode) {
        this.subCode = subCode;
    }

    /**
     * 获取名称
     *
     * @return name - 名称
     */
    public String getName() {
        return name;
    }

    /**
     * 设置名称
     *
     * @param name 名称
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获取上网发行日期
     *
     * @return ipo_date - 上网发行日期
     */
    public String getIpoDate() {
        return ipoDate;
    }

    /**
     * 设置上网发行日期
     *
     * @param ipoDate 上网发行日期
     */
    public void setIpoDate(String ipoDate) {
        this.ipoDate = ipoDate;
    }

    /**
     * 获取上市日期
     *
     * @return issue_date - 上市日期
     */
    public String getIssueDate() {
        return issueDate;
    }

    /**
     * 设置上市日期
     *
     * @param issueDate 上市日期
     */
    public void setIssueDate(String issueDate) {
        this.issueDate = issueDate;
    }

    /**
     * 获取发行总量（万股）
     *
     * @return amount - 发行总量（万股）
     */
    public Float getAmount() {
        return amount;
    }

    /**
     * 设置发行总量（万股）
     *
     * @param amount 发行总量（万股）
     */
    public void setAmount(Float amount) {
        this.amount = amount;
    }

    /**
     * 获取上网发行总量（万股）
     *
     * @return market_amount - 上网发行总量（万股）
     */
    public Float getMarketAmount() {
        return marketAmount;
    }

    /**
     * 设置上网发行总量（万股）
     *
     * @param marketAmount 上网发行总量（万股）
     */
    public void setMarketAmount(Float marketAmount) {
        this.marketAmount = marketAmount;
    }

    /**
     * 获取发行价格
     *
     * @return price - 发行价格
     */
    public Float getPrice() {
        return price;
    }

    /**
     * 设置发行价格
     *
     * @param price 发行价格
     */
    public void setPrice(Float price) {
        this.price = price;
    }

    /**
     * 获取市盈率
     *
     * @return pe - 市盈率
     */
    public Float getPe() {
        return pe;
    }

    /**
     * 设置市盈率
     *
     * @param pe 市盈率
     */
    public void setPe(Float pe) {
        this.pe = pe;
    }

    /**
     * 获取个人申购上限（万股）
     *
     * @return limit_amount - 个人申购上限（万股）
     */
    public Float getLimitAmount() {
        return limitAmount;
    }

    /**
     * 设置个人申购上限（万股）
     *
     * @param limitAmount 个人申购上限（万股）
     */
    public void setLimitAmount(Float limitAmount) {
        this.limitAmount = limitAmount;
    }

    /**
     * 获取募集资金（亿元）
     *
     * @return funds - 募集资金（亿元）
     */
    public Float getFunds() {
        return funds;
    }

    /**
     * 设置募集资金（亿元）
     *
     * @param funds 募集资金（亿元）
     */
    public void setFunds(Float funds) {
        this.funds = funds;
    }

    /**
     * 获取中签率
     *
     * @return ballot - 中签率
     */
    public Float getBallot() {
        return ballot;
    }

    /**
     * 设置中签率
     *
     * @param ballot 中签率
     */
    public void setBallot(Float ballot) {
        this.ballot = ballot;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", tid=").append(tid);
        sb.append(", tsCode=").append(tsCode);
        sb.append(", subCode=").append(subCode);
        sb.append(", name=").append(name);
        sb.append(", ipoDate=").append(ipoDate);
        sb.append(", issueDate=").append(issueDate);
        sb.append(", amount=").append(amount);
        sb.append(", marketAmount=").append(marketAmount);
        sb.append(", price=").append(price);
        sb.append(", pe=").append(pe);
        sb.append(", limitAmount=").append(limitAmount);
        sb.append(", funds=").append(funds);
        sb.append(", ballot=").append(ballot);
        sb.append("]");
        return sb.toString();
    }
}